The invention described herein relates generally to the generation of images on a video display system screen. More specifically, the invention relates to apparatus and methods of use which permit the selective relation of overlays and underlays to windows generated for a graphics video display screen.
Computer driven video display systems of contemporary design use windows to highlight or concurrently display multi-process information being conveyed to the user of the system. Given the complex graphics available in contemporary personal computers or workstations, including diverse pull down and pop up menus, multiple windows, and icons, it has become highly desirable to use graphical patterns with fixed orders of hierarchy to ease the "clutter induced confusion" associated with complex operating environments. A particularly important aspect of clarifying the information being portrayed involves the independent linking of patterns to windows.
The aforementioned co-pending application describes apparatus and methods by which overlay patterns can be linked to specific windows. Another form of window data manipulation is described in U.S. Pat. No. 4,653,020, the teaching of which involves a concurrent display of selected data from multiple windows. A digital graphic pattern mixer having functions similar to the RAMDAC (Random Access Memory Digital-to-Analog Converter) discussed herein is disclosed in U.S. Pat. No. 4,149,184. Overlay and cursor priority during a selective merger of image patterns is the subject of U.S. Pat. No. 4,317,114.
The image portrayed on the video display of a contemporary graphics workstation is stored in a memory array known as a frame buffer. The frame buffer is periodically scanned or otherwise accessed to ascertain the color, intensity and like information used to generate the image on the video display. The image as stored in the frame buffer normally includes the effects of windows. Consequently, when a window is removed from view the appropriate underlying image must be regenerated in the changed region of the frame buffer.
Overlays and underlays are two forms of graphic data manipulation which do not change the image as stored in the frame buffer. The advantage of such implementations is that the frame buffer does not have to be modified upon the creation or deletion of the associated graphics patterns. The effects of overlays and underlays for each pixel position are conventionally introduced in the RAMDAC devices which convert digital frame buffer data into analog video output signals. In general, the overlay information supersedes by pixel the related data derived from the frame buffer while the underlaying information supersedes selectively based upon the deletion of a background color. The basic implementation is commonly known.
A representative example of an overlay would be a blinking grid pattern which covers all or part of an image on the video display screen. Similarly, an example of an underlay would be a grid pattern which is coextensive with the background as depicted on a video display screen. As the area of the background changes in response to variations of the foreground image, so to does the underlay. Since neither the overlay nor the underlay are elements of the data stored in the frame buffer, the overlay and the underlay are subject to change without modifying the content of the frame buffer. The use of such overlays and underlays is particularly important in the display of three dimensional graphics images which if modified to add or delete an overlay or underlay would require extensive regeneration activity.
The information represented in overlays, underlays as well as any similarly functioning masking or control planes, is normally stored in planes of a video random access memory array, herein referred to as the control plane VRAM (Video Random Access Memory). The planes in such array are analogous in size to the frame buffer VRAM in terms of pixel count. Preferably, window priority and location information is stored in similar additional planes of the control plane VRAM. The aforementioned co-pending application relates to the selective linking of overlays to windows using such window and overlay data in the control plane VRAM. The focus thereof is the selective control of overlays in the windows to which such overlays relate.
There remains a need for a system and method which can relate the palettes of underlays, as well as overlays, to windows. Furthermore, and in view of the diverse graphic display usage, it would also be desirable to provide the workstation user with the ability to interchangeably use planes within the control plane VRAM for either overlay or underlay functions to most efficiently utilize the limited size of the control plane VRAM.
Commercially available graphic workstation products which provide the ability to relate overlay and underlay patterns to windows exhibit abnormal and somewhat confusing phenomenon, namely color changes in underlays when the cursor is moved between windows having such window linked overlay and underlay patterns. The effect is believed to be a consequence of having too few overlay palettes, or too few user accessible overlay palettes.
Accordingly, there remains a need for a system and method which provides window specific control of overlays and underlays, as well as RAMDAC or independently combined cursor patterns, within the context of conventional frame buffer VRAMs, control plane VRAMs, and RAMDACs.